Method and System for Predicting the Timing of and Attendance at an Event Milestone

ABSTRACT

A method for predicting the timing of and attendance at a predefined event milestone, the method including the steps of: receiving, by a prediction engine, a first input variable; generating, by the prediction engine, a first time prediction of the predefined event milestone in response to the received first input variable; receiving, by the prediction engine, a second input variable; generating, by the prediction engine, a first attendance prediction at the predefined event milestone in response to the second input variable; and assigning a first confidence level to one of the first time prediction and the first attendance prediction.

BACKGROUND

The present invention is directed to methods and systems for predicting the timing of and attendance at an event milestone, assigning confidence levels to the predictions, and providing notifications of the same.

The operation of a major event (such as a professional sports game or a concert) and specifically attendance of that event is affected by many variables which can greatly impact various interested parties including event organizers, vendors, and those in locations surrounding the event. Some variables are known—in the case of an event where tickets are pre-sold, the expected attendance is known. In other cases, where people largely buy tickets on the day of the event, it is not. Some events have a defined end time (a concert is scheduled to run for 2 hours) and some have a variable end time (an NFL game may run from between 3 hours to 5 hours depending upon speed of play and the potential of overtime). For some events, the majority of attendees arrive at the beginning of the event and mostly stay to the end. For others, attendees may arrive late or leave early depending upon a number of factors.

Examples of various event uncertainties and how such uncertainties effect various interested parties can include, without limitation, the following: (1) Event parking attendants and traffic police need to anticipate when people will leave an event and take to their vehicles, but event time is variable. For example two NFL games start at 1:00 PM. One game is close, and 80% of attendees stay to the end of the game which concludes at 5:00 PM. The second game is a rout with the home team losing badly. The game ends at 4:00 PM, but 65% of attendees have already left by 3:00 PM; (2) Event vendors may wish to maximize revenues through variable pricing. For example a beer vendor at a baseball match must cut-off beer sales by the 7th inning The exact time of when the 7th inning will begin is unknown and therefore the vendor cannot tailor sales of stock accordingly. If that vendor knew they had approximately 1 hour of operating time remaining they could price accordingly (offer promotions such as a free bag of peanuts if they have too much stock, or raise prices if stock is limited); (3) Transportation in the surrounding areas (roads, public transportation, public footpaths) is affected by when attendees leave an event en-mass. If this could be predicted, traffic-enabled GPS systems could direct non-event traffic away from an area in anticipation of future busy conditions; (4) Food prep and staffing: Vendors at the event or surrounding area have a vested interest in understanding attendance, patterns of traffic for vendors based on key indicators in the event itself. Consider there may be specific events that impact a food serving area more than others thus moving staff could be performed based on prediction. The amount of food they stock and prepare to serve the public and staff could greatly benefit from being able to predict the key milestones.

SUMMARY

The disclosure is directed to inventive methods and systems for predicting the timing of and attendance at a predefined event milestone. An embodiment can include, but is not limited to, a method and system whereby parties can subscribe to predictions related to the attendance of an event at a given milestone and/or the actual time a given event milestone will occur; an event milestone to actual time prediction system can predict event milestones with actual time periods; an event milestone to predicted attendance system can predict how many attendees will be at the event during defined event milestones; and an event milestone notification system can match subscriptions with event predictions as they are received. When a match is found, the system can generate a notification and send it to the appropriate subscriber.

According to an aspect, a method for predicting the timing of and attendance at a predefined event milestone includes the steps of: (i) receiving, by a prediction engine, a first input variable; (ii) generating, by the prediction engine, a first time prediction of the predefined event milestone in response to the received first input variable; (iii) receiving, by the prediction engine, a second input variable; (iv) generating, by the prediction engine, a first attendance prediction at the predefined event milestone in response to the second input variable; and (v) assigning a first confidence level to one of the first time prediction and the first attendance prediction.

According to an another aspect, a system for predicting the timing of and attendance at a predefined event milestone including: an event milestone prediction system comprising: a prediction engine configured to: receive a first input variable; and generate a first time prediction of the predefined event milestone in response to the received first input variable; the prediction engine further configured to: receive a second input variable; and generate a first attendance prediction at the predefined event milestone in response to the second input variable; wherein the event milestone prediction system is configured to assign a first confidence level to one of the first time prediction and the first attendance prediction.

According to a further another aspect, a computer program product for predicting the timing of and attendance at a predefined event milestone, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, wherein the computer readable storage medium is not a transitory signal per se, the program instructions readable by a computer to cause the computer to perform a method including (i) receiving, by a prediction engine, a first input variable; (ii) generating, by the prediction engine, a first time prediction of the predefined event milestone in response to the received first input variable; (iii) receiving, by the prediction engine, a second input variable; (iv) generating, by the prediction engine, a first attendance prediction at the predefined event milestone in response to the second input variable; and (v) assigning a first confidence level to one of the first time prediction and the first attendance prediction.

In accordance with a preferred embodiment of the present invention, a specialized improved computer system is created as described herein—here the devices, engines, databases and/or systems that are specifically structured, configured, connected, and/or programmed to predict the timing of and attendance at an event milestone, assign confidence levels to the predictions, and provide notifications of the same to interested parties.

The transmission/transfer of data to/from systems, databases, engines, mobile devices, or other computer based devices/systems can be via wireless communication/transmission over a network, which can be any suitable wired or wireless network capable of transmitting communication, including but not limited to a telephone network, Internet, Intranet, local area network, Ethernet, online communication, offline communications, wireless communications and/or similar communications means. The wireless transmission can be accomplished through any wireless protocol/technology, including, but not limited to, ZigBee standards-based protocol, Bluetooth technology, and/or Wi-Fi technology. Further, this data can be encrypted as needed based on the sensitivity of the data or the location the database with respect to a mobile device, for example. One system can be located in the same room, in a different room in the same building, in a completely different building and location from another system, or in the “cloud.” The storage of the data in the cloud can be subject to security measures, as should be appreciated by those of skill in the art. Various alerts and notifications can be sent to authorized users of the systems described herein by the data transmission means described herein or as may be known or appreciated by those of skill in the art.

These and other aspects of the invention will become clear in the detailed description set forth below.

BRIEF DESCRIPTION OF THE DRAWINGS

In the drawings, like reference characters generally refer to the same parts throughout the different views. Also, the drawings are not necessarily to scale, emphasis instead generally being placed upon illustrating the principles of the invention.

FIG. 1 is a schematic representation of a system for predicting the timing of and attendance at a predefined event milestone, in accordance with an embodiment.

FIG. 2 is a flowchart of a method for predicting the timing of and attendance at a predefined event milestone, in accordance with an embodiment.

FIG. 3 is a schematic representation of a computer program product configured to predict the timing of and attendance at a predefined event milestone, in accordance with an embodiment.

DETAILED DESCRIPTION

The present disclosure is directed to embodiments of a method and system for predicting the timing of and attendance at a predefined event milestone. The disclosed system can be configured to generate a prediction of a time at which milestones and highlights during an event (e.g., a baseball game) occur, based on, for example, receiving and analyzing certain variables such as a current pace of the event, pace of previous events that include a set of participants similar to those in the event, and pace of other events which are similar to the current pace of the event. In one embodiment, the system can be configured to assign a confidence level on the predicted time at which the milestones and the highlights during the event occur, wherein the confidence level can be dynamically adjusted as the event progresses. In another embodiment, the system can be configured to generate a prediction regarding a number of attendees who will present during the milestones and the highlights of the event. In a particularly advantageous aspect, the “event” can relate but is not limited to real life events such as concerts and sports events.

In view of the foregoing, a system and method is provided that dynamically predicts the actual time (preferably within a predefined set threshold) a milestone will occur at a given event, based on current and historical event information (variables) is provided. These variables can be almost anything that may have an effect on the quantity/quality of a generated prediction. The prediction can be assigned a confidence level and updated as both the event progresses and new input data (variables) is received. The actual time predictions by milestone can be sent to interested parties through an event prediction notification system. This can answer the question: at what time will milestone X occur during the event? A system and method is also provided that dynamically predicts the attendance at a given event at a specified event milestone based on current and historical event information, and on factors external to the event such as weather and transportation data (variables). The prediction can be assigned a confidence level and updated as both the event progresses and new input data is received. The attendance predictions by milestone can be sent to interested parties through an event prediction notification system. This answers the question: how many people will be attending the event when milestone X occurs? This system and method of an embodiment can be of interest to event organizers, vendors at events, local police controlling traffic at the event, and mapping systems predicting traffic in an area surrounding an event, for example (interested parties).

Referring to FIG. 1, a schematic representation of a system 100 for predicting the timing of and attendance at a predefined event milestone in accordance with an embodiment is provided. The system includes an event milestone prediction system 10, which can include a single prediction engine 11. The prediction engine 11 can include, but is not limited to, a first prediction sub-engine 12 and a second prediction sub-engine 14 (and can also include a database(s) to store information such as input variables and algorithms to direct the prediction engine 11 and/or the first and second prediction sub-engines 12/14 based on the received and analyzed input variables, and one or more servers including any processor, server (including a cloud server), mainframe computer, or other processor-based device capable of facilitating communication and running software programs or other applications). The prediction engine 11 can be programmed, configured, or connected to receive and transmit the same information or commands, and perform the same functionality as described with respect to the first prediction sub-engine 12 and the second prediction sub-engine 14 herein (and can be so programmed, configured, or connected to with or without additionally including the separate first prediction sub-engine 12 and the second prediction sub-engine 14). For example, where there are descriptions regarding the respective separate functionalities of the first prediction sub-engine 12 and the second prediction sub-engine 14, such functionality can be carried out by the single prediction engine 11. For descriptions regarding communications/commands/transmission of data to or between the first prediction sub-engine 12 and the second prediction sub-engine 14, such communications/commands/transmission of data can occur within the single prediction engine 11. In an embodiment that includes a first prediction sub-engine 12 and the second prediction sub-engine 14, these sub-engines can be included within the same hardware component (and at the same geographic location) or in different hardware components (and at different geographic locations).

The first prediction sub-engine 12 and second prediction sub-engine 14 can be communicatively connected, as shown in FIG. 1. Input variables can be stored in databases 50 and 50′. These databases 50/50′ can be connected to the event milestone prediction system 10, and input variables from database 50 can be transmitted to prediction sub-engine 12 and input variables from database 50′ can be transmitted to prediction sub-engine 14. Input variables can be delivered from an administrator with an administrator device 20 to database 50, and from with an administrator device administrator 20′ (which may be the same administrator with the same administrator device) to database 50′, or can be directly transmitted to the event milestone prediction system 10, first prediction sub-engine 12, and/or second prediction 14.

In accordance with an embodiment, the first prediction sub-engine 12 can be configured to receive at least a first input variable from administrator device 20 and/or database 50, analyze the first input variable, and generate a first time prediction of the predefined event milestone in response to the received first input variable. The event milestone prediction system 10 can be configured to assign a first confidence level to the first time prediction of the predefined event milestone. The first time prediction of the predefined event milestone along with the associated confidence level can then be transmitted from the event milestone prediction system 10 directly to the event milestone subscribers 40, or by the event milestone notification system 30 (which can be part of and within the same hardware component (and at the same geographic location), or separate from and in different hardware components (and can be at different geographic locations) as the single prediction engine 11), to the event milestone subscribers 40 (on a specific timed basis—e.g., immediately, particular timed intervals, to specific dates and times). Similarly, the second prediction sub-engine 14 can be configured to receive at least a second input variable, analyze the second input variable, and generate a first attendance prediction at the predefined event milestone in response to the second input variable. The event milestone prediction system 10 can be configured to assign a second confidence level to the first attendance prediction at the predefined event milestone. The first attendance prediction at the predefined event milestone along with the associated confidence level can then be transmitted from the event milestone prediction system 10 directly to the event milestone subscribers 40, or by the event milestone notification system 30, to the event milestone subscribers 40, i.e., interested parties (on a specific timed basis—e.g., immediately, particular timed intervals, to specific dates and times). The event milestone subscribers 40 can receive such notifications on a particular computing device. Examples of milestone subscriber computing devices can include personal computers, desktops, laptops, tablets, as well as any other fixed or mobile computerized device comprising a processor and a network connection and capable of communicating directly with the event milestone prediction system 10 or indirectly through the event milestone notification system 30.

Referring to FIG. 2, a flowchart of a method 200 for predicting the timing of and attendance at a predefined event milestone in accordance with an embodiment is provided. The steps of the method are illustrative only, and do not imply that any steps must be performed or performed in any particular order.

In step 210, a first input variable is received by the prediction engine 11 (or the first prediction sub-engine 12).

In step 220, a first time prediction of the predefined event milestone is generated in response to the received first input variable by the prediction engine 11 (or the first prediction sub-engine 12). This first time prediction can be generated within a predefined threshold (for example +/−5 minutes), as further described in the Exemplary System, Uses and Functionalities section below.

In step 230, a second input variable is received by the prediction engine 11 (or the second prediction sub-engine 14).

In step 240, a first attendance prediction at the predefined event milestone is generated in response to the second input variable by the prediction engine 11 (or the second prediction sub-engine 14). The first attendance prediction can be generated within a predefined threshold (for example +/−5%), as further described in the Exemplary System, Uses and Functionalities section below.

In step 250, a first confidence level is assigned to one of the first time prediction and the first attendance prediction.

In step 260, a second confidence level is assigned to the other one of the first time prediction and the first attendance prediction.

In step 270, at least one of the first time prediction and the first attendance prediction is transmitted to event milestone subscribers.

It should be appreciated that multiple input variables can be received by the prediction engine 11 (and/or by the first prediction sub-engine 12 and the second prediction sub-engine 14), multiple time predictions can be generated by the prediction engine 11 (and/or by the first prediction sub-engine 12) based on the respective multiple input variables, multiple attendance predictions can be generated by the prediction engine 11 (and/or by the second prediction sub-engine 14) based on the respective multiple variables, and multiple respective confidence levels can be assigned to the respective multiple time predictions and to the multiple attendance predictions, all of which can be transmitted to event milestone subscribers 40.

Referring to FIG. 3, a schematic representation of a computer program product configured or programmed to predict the timing of and attendance at a predefined event milestone in accordance with an embodiment is provided. Components of the event milestone prediction system 10 including components of the prediction engine 11, generally designated as 300, are shown.

In the illustrative embodiment, event milestone prediction system 10 is shown in the form of a general-purpose computing device, such as computer system 310. The components of computer system 310 may include, but are not limited to, one or more memory(ies) 320, one or more processor(s) or processing unit(s) 330, a network adaptor 340, and an input/output (I/O) interface(s) 350. It should be appreciated that a single memory and a single processor or processing unit 330 can be utilized in an embodiment including the single prediction engine 11, and multiple memories 320 and/or processor(s) or processing unit(s) 330 can be utilized in an embodiment including the first prediction sub-engine 12 and the second prediction sub-engine 14. The various components are connected to one another as shown by the double-headed arrows, each of which represent the ability of each of these components to transmit/receive information and/or commands from each of the other respective components or external components/devices as may be appropriate (as should be appreciated by one of skill in the art in conjunction with a review of this description).

Computer system 310 typically includes a variety of computer system readable media. Such media may be any available media that is accessible by computer system 310, and it can include both volatile and non-volatile media, removable and non-removable media.

Memory(ies) 320 can include computer system readable media in the form of volatile memory, such as random access memory (RAM) and/or cache memory. Computer system 310 may further include other removable/non-removable, volatile/non-volatile computer system storage media (as should be appreciated by one of skill in the art in conjunction with a review of this description). Received input variable data, an operating system, one or more application programs, program modules, and program data can be stored in memory(ies) 320. Each of the operating systems, one or more application programs, other program modules, and program data, or some combination thereof, may include an implementation of a networking environment. The program modules generally carry out the functions and/or methodologies of embodiments as described herein.

Computer system 310 may also communicate with one or more event milestone subscriber device(s) 130 (which can be used by subscribers 40, as shown in FIG. 1), and administrator devices 20/20′, each of which can be any processor-based device that are capable of facilitating a user's access and interaction with the computer system 310 (including one or more devices that enable a user to interact with computer system 310 and any devices (e.g., network card, modem, etc.) that enable computer system 310 to communicate with one or more other computing devices). Such communication can occur via input/output (I/O) interface(s) 350. Still yet, computer system 310 can communicate with one or more networks, such as a local area network (LAN), a general wide area network (WAN), and/or a public network (e.g., the Internet) via network adapter 340. It should be understood that although not shown, other hardware and software components, such as microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data archival storage systems may be used in conjunction with computer system 310.

Network adaptor 340 is programmed, configured, or connected to transmit/receive information and/or commands from/to the event milestone subscriber devices 130 and administrator device 20/20′, either directly (through a network 140 or via a wired configuration) or through the event milestone notification system 30 (which can be a part of or separate from computer system 310). Network adaptor 340 is also programmed, configured, or connected to receive input variables 50/50′.

The computer system 310, via the processor(s) or processing unit(s) 330 and the connections between the processors or processing units 330 and the memory(ies) 320 and network adaptor 340, is configured or programmed to function and implement/perform the steps of the methods described herein.

As described herein, the event milestone prediction system 10 can be used to generate predictions related to when, in actual time, an event milestone will occur and to predict the event attendance when that milestone arrives. Advantages of embodiments (as briefly detailed above and shown in the Figures) are illustrated by the following Exemplary System, Uses and Functionalities description. However, the particular components, uses, functionalities and amounts thereof recited in this description, as well as other conditions and details, are to be interpreted to apply broadly in the art and should not be construed to unduly restrict or limit the invention in any way.

EXEMPLARY SYSTEM, USES, AND FUNCTIONALITIES

An embodiment can be divided into three main components including, but not limited to (1) an event milestone to actual time prediction system (including the first prediction sub-engine 12), (2) an event milestone to predicted attendance system (including the second prediction sub-engine 14); and (3) a subscription event milestone notification system (including the event milestone notification system 30 and event milestone subscribers 40). Alternatively, as described above, each of these event milestone to actual time prediction system, the event milestone to predicted attendance system, and the event milestone notification system can be part of a single component/system (which can be part of and within the same hardware component, and at the same geographic location) which can perform each of the functionalities of these three components/systems combined. Also, the event milestone to actual time prediction system and the event milestone to predicted attendance system can be part of a single component/system (which can be part of and within the same hardware component, and at the same geographic location), while the event milestone notification system 30 can be part of a separate system (which is separate from and in different hardware component(s), and can be at different geographic location(s)).

In brief, the event milestone to actual time prediction system can be configured to predict event milestones (e.g., end of event, commencement of fourth quarter) with actual time periods (3:00 PM, 1:45 PM). In cases where event milestones are closely correlated to a fixed time schedule (the end time of a concert is pre-scheduled and typically finishes close to this pre-defined time, the end time of a soccer match is almost always between 1 hr 45 m and 1 h 55 m after starting) predictions may not necessarily be needed (but can be obtained). However the duration of some events (sports events such as a football or baseball game) can be highly variable where milestones such as end of event, end of quarter, and end of inning can differ significantly between games.

For events with highly variable milestones, the following input sources, which can include input variables, can be used to form predictions—(1) Pacing of current event—the time an event takes to reach already occurred milestones can be a significant factor in predicting how long future milestones will take. If the first 5 innings in a baseball match have closely correlated to a fixed time (5 minutes each, 20 minutes each) then this can be factored into predictions for future innings. (2) Historical pacing of participants in previous events—how long did it take participants to reach milestones in previous events? By studying previous events (games) of a football team that predominantly passes the ball, for example, a pattern may emerge for quick games, whereas a team that predominantly runs the ball could average longer games. (3) Comparison of similarly poised events—how long have other events with similar characteristics taken to reach milestones? For example, a football game entering the fourth quarter where both teams are tied is likely to take longer to play out than a game where one team leads the other by 21 points.

An embodiment of the disclosed system can use the factors described in the preceding paragraph and other factors to generate predictions of actual time for predefined future milestones, and to assign a confidence level to them. The confidence level can be assigned based on the relative strength of analysis described in the preceding paragraph (i.e., input variables obtained from the sources such as the pacing of the current event, historical pacing, and a comparison of similarly poised events). Each of these sources/factors can be used to generate their own respective confidence levels. For example (regarding the factor of pacing), in a baseball game where there is a low level of correlation between the timing/length of innings (1st inning—15 minutes, 2nd inning—7 minutes), and therefore predictions of future innings are harder to draw based on this factor—a prediction based on the pacing factor has a low confidence rating (e.g., a 2 out of 10 (or 20%), where 1 is the lowest confidence level and 10 is the highest confidence level (other representative numbers can be used)). Conversely, historical analysis (the factor of historical pacing) may retrieve past baseball games that were closely correlated to this game (e.g., same teams, same time of year, same weather and other similar circumstances), and therefore a higher weighting (e.g., a confidence level of 8 out of 10 (or 80%)) can be assigned to predictions based on this factor. Confidence levels can also be relatively lower for predictions made further into the future. For example, an embodiment of the system is configured to predict the length of the next inning with a higher confidence level than the inning after the next inning and so forth.

In accordance with an exemplary embodiment, the following can be actual time predictions for a baseball game in the 6th inning: Start of 7th inning: 3:35 PM (confidence level 75% +/−5 mins); Start of 8th inning: 3:55 PM (confidence level 55% +/−5 mins); Start of 9th inning: 4:20 PM (confidence level 35% +/−5 mins); End of game: 4:35 PM (confidence level 20% +/−5 mins). As the event continues, predictions can continually be dynamically refined based on additional static or historical input variables, and dynamic variables (such as current weather or score), and confidence levels can be updated.

The event milestone to predicted attendance system can be configured to predict how many attendees will be at the event during defined event milestones. As an input source, this system can require a basic measurement of the number of people who are present at the event at a given time (a precise number is not needed). This can be implemented in a number of ways including: (1) At points of entry and exit to the event location, counting the number of people who enter and leave the event (turnstiles, scanning of tickets, embedded RFID in tickets, surveillance cameras); (2) Through image analysis of the event (a blimp above the event, or cameras pointed at seating in the event, could determine through image analysis if the stadium is, say 80% full).

Event attendance can be recorded by milestone (e.g., start of event, bottom of 1st inning etc.) to create a record of the number of attendees present in a stadium, for example, at a given time. The following input sources can, for example, then be used to predict attendance for future event milestones: (1) Attendance patterns of current event—how many people are present at the event now and how many tickets were sold? An event in the 1st inning where attendance is only 65% of tickets sold indicates attendance will rise for future milestones. Conversely for an event where attendance has fallen assumes people have left the event and future milestones will not reach the higher attendance levels of earlier milestones. (2) Attendance patterns in previous events—how many attendees were present during milestones in previous events? This may uncover historical patterns—for example that 35% of attendees at the “home team's” game leave in the 7th inning. Comparison of similarly poised events—how many people have attended events with similar characteristics at specified milestones? A football game where the home team is losing by 21 points in the fourth quarter may see attendance drop to 20% of original levels, whereas a close game or a game against a main rival could see 90% attendance levels up until the end of game milestone, for example. (3) External factors—Factors external to the event itself may also greatly influence attendance. Weather can be a significant factor on many levels. An event held outdoors could see a significant drop in attendance during inclement weather, whereas pleasant weather may encourage attendees to stay longer. An event that runs at the same time as rush hour may see attendees leave early to beat the traffic. An event where many attendees rely on public transportation may see significant drops in attendance based around train or bus timetables. The system of an embodiment can be configured to use these factors to generate predictions of attendance levels for pre-defined future milestones, and to assign a confidence level to them. Example attendance predictions for a football game in the 3rd quarter can be—Start of fourth quarter: 80% of maximum attendance (confidence level 75% +/−5%); Two minute warning: 65% of maximum attendance (confidence level 65% +/−5%); and End of game: 60% of maximum attendance (confidence level 54% +/−5%).

The subscription event milestone notification system can be configured to allow users, for example, to subscribe to a system that sends them notifications based upon defined criteria on a per event basis or full season basis, for example. These criteria can include: Event milestone actual time; Event milestone attendance level; and Event milestone confidence level. Examples of subscriptions can include: (1) Event parking supervisor—Notify me when there are predicted to be 30 minutes remaining until the conclusion of the event; Notify me when 20% or more of attendees are predicted to leave within a 15 minute period; Notify me when there is an 80% confidence level for the prediction “number of attendees who will stay at an event until its conclusion”; (2) Event vendor—Notify me when the 7th inning is predicted to be one hour away; Notify me when attendance at the event is predicted to be at its highest level; and (3) Traffic mapping service-13 Notify me when an event is predicted to end with an 80% confidence level; and Notify me when the busiest period of attendees leaving an event is predicted to be.

A list of milestones that can require predictions can include baseball game: start of event, start of third inning, end of game. The first prediction sub-engine 12 can be configured to predict when each milestone will be reached. Input variable can include current event time milestones (for example what time did the game start, what time did the second inning start); and/or historical event time milestones (at what time were similar milestones reached in other related events with additional focus on events that closely match the characteristics of the current event, such as other games with a similar point-in-time score). The first prediction sub-engine 12 can be configured to generate actual time predictions for each event milestone within a defined threshold (for example +/+5 minutes) and to assign a confidence level. The predictions can be continually updated as new information is available (the score changes, the next inning is reached, a former milestone takes longer or shorter to reach etc.). The second prediction sub-engine 14 can be configured to predict how many people will be attending the event when a given milestone is reached. Input variable can include current event attendance milestones (how many people are attending the event at a point in time, what is the expected maximum attendance [how many tickets were sold]); historical event attendance milestones (how many people attended similar milestones in other related events with additional focus on events that closely match the characteristics of the current event, such as other games with a similar point-in-time score); and/or other external data sources that affect attendance (for example weather data for outdoor events, predicted traffic build ups, transportation schedules). The second prediction sub-engine 14 can be configured to generate attendance predictions for each event milestone within a defined threshold (for example +/−5%) and to assign a confidence level. The predictions can be continually updated as new information is available (the score changes, the next inning is reached, it starts to rain). The event milestone prediction system 10 can be configured to send both actual time/milestone and attendance/milestone predictions to the event milestone notification system 30 and then to subscribers.

Event milestone subscribers can subscribe to the event milestone notification system 10 (for example event vendors, event parking supervisors, local police, predictive traffic mapping services). Subscribers can specify which notifications they wish to receive when a prediction is generated related to actual time or attendance of a given event milestone (for example notify me when the 7th inning will start, notify me when 10,000 people will be leaving the event within a 15 minute period). Subscribers can select a threshold for confidence level (for example only notify me for predictions with a confidence level 70% or above), and frequency (only send me new predictions every 5 minutes, only send me new predictions when there is a 10% or more improvement in confidence level). Subscribers can receive notifications on their mobile or other computing device. The event milestone notification system 30 can match subscriptions with event predictions as they are received. When a match is found the system 30, it can be configured to generate a notification and to transmit it to the appropriate subscriber.

The present invention may be a system, a method, and/or a computer program product at any possible technical detail level of integration. The computer program product may include a computer readable storage medium (or media) having computer readable program instructions thereon for causing a processor to carry out aspects of the present invention.

The computer readable storage medium can be a tangible device that can retain and store instructions for use by an instruction execution device. The computer readable storage medium may be, for example, but is not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. A non-exhaustive list of more specific examples of the computer readable storage medium includes the following: a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), a static random access memory (SRAM), a portable compact disc read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanically encoded device such as punch-cards or raised structures in a groove having instructions recorded thereon, and any suitable combination of the foregoing. A computer readable storage medium, as used herein, is not to be construed as being transitory signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide or other transmission media (e.g., light pulses passing through a fiber-optic cable), or electrical signals transmitted through a wire.

Computer readable program instructions described herein can be downloaded to respective computing/processing devices from a computer readable storage medium or to an external computer or external storage device via a network, for example, the Internet, a local area network, a wide area network and/or a wireless network. The network may comprise copper transmission cables, optical transmission fibers, wireless transmission, routers, firewalls, switches, gateway computers and/or edge servers. A network adapter card or network interface in each computing/processing device receives computer readable program instructions from the network and forwards the computer readable program instructions for storage in a computer readable storage medium within the respective computing/processing device.

Computer readable program instructions for carrying out operations of the present invention may be assembler instructions, instruction-set-architecture (ISA) instructions, machine instructions, machine dependent instructions, microcode, firmware instructions, state-setting data, configuration data for integrated circuitry, or either source code or object code written in any combination of one or more programming languages, including an object oriented programming language such as Smalltalk, C++, or the like, and procedural programming languages, such as the “C” programming language or similar programming languages. The computer readable program instructions may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider). In some embodiments, electronic circuitry including, for example, programmable logic circuitry, field-programmable gate arrays (FPGA), or programmable logic arrays (PLA) may execute the computer readable program instructions by utilizing state information of the computer readable program instructions to personalize the electronic circuitry, in order to perform aspects of the present invention.

Aspects of the present invention are described herein with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer readable program instructions.

These computer readable program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks. These computer readable program instructions may also be stored in a computer readable storage medium that can direct a computer, a programmable data processing apparatus, and/or other devices to function in a particular manner, such that the computer readable storage medium having instructions stored therein comprises an article of manufacture including instructions which implement aspects of the function/act specified in the flowchart and/or block diagram block or blocks.

The computer readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable apparatus or other device to produce a computer implemented process, such that the instructions which execute on the computer, other programmable apparatus, or other device implement the functions/acts specified in the flowchart and/or block diagram block or blocks.

The flowchart and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of instructions, which comprises one or more executable instructions for implementing the specified logical function(s). In some alternative implementations, the functions noted in the blocks may occur out of the order noted in the Figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts or carry out combinations of special purpose hardware and computer instructions. 

What is claimed is:
 1. A method for predicting the timing of and attendance at a predefined event milestone, the method comprising the steps of: receiving, by a prediction engine, a first input variable; generating, by the prediction engine, a first time prediction of the predefined event milestone in response to the received first input variable; receiving, by the prediction engine, a second input variable; generating, by the prediction engine, a first attendance prediction at the predefined event milestone in response to the second input variable; and assigning a first confidence level to one of the first time prediction and the first attendance prediction.
 2. The method of claim 1, further comprising the step of assigning a second confidence level to the other one of the first time prediction and the first attendance prediction.
 3. The method of claim 1, wherein the step of generating a first time prediction of the predefined event milestone further comprises the step of generating the first time prediction within a predefined threshold.
 4. The method of claim 1, wherein the step of generating a first attendance prediction at the predefined event milestone further comprises the step of generating the first attendance prediction within a predefined threshold.
 5. The method of claim 1, further comprising the step of receiving, by the prediction engine, a third input variable.
 6. The method of claim 5, further comprising the step of generating, by the prediction engine, a second time prediction of the predefined event milestone in response to the received third input variable.
 7. The method of claim 6, further comprising the step of assigning a second confidence level to the second time prediction.
 8. The method of claim 1, further comprising the step of receiving, by the prediction engine, a third input variable.
 9. The method of claim 8, further comprising the step of generating, by the prediction engine, a second attendance prediction at the predefined event milestone in response to the third input variable.
 10. The method of claim 9, further comprising the step of assigning a second confidence level to the second attendance prediction.
 11. The method of claim 1, further comprising the step of transmitting one of the first time prediction and the first attendance prediction.
 12. A system for predicting the timing of and attendance at a predefined event milestone, the system comprising: an event milestone prediction system comprising: a prediction engine configured to: receive a first input variable; generate a first time prediction of the predefined event milestone in response to the received first input variable; receive a second input variable; and generate a first attendance prediction at the predefined event milestone in response to the second input variable; wherein the event milestone prediction system is configured to assign a first confidence level to one of the first time prediction and the first attendance prediction.
 13. The system of claim 12, wherein the event milestone prediction system is configured to assign a second confidence level to the other one of the first time prediction and the first attendance prediction.
 14. The system of claim 12, wherein the prediction engine is configured to generate the first time prediction of the predefined event milestone within a predefined threshold.
 15. The system of claim 12, wherein the prediction engine is configured to generate the first attendance prediction within a predefined threshold.
 16. The system of claim 12, wherein the prediction engine is configured to receive a third input variable and to generate a second time prediction of the predefined event milestone in response to the received third input variable.
 17. The system of claim 16, wherein the event milestone prediction system is configured to assign a second confidence level to the second time prediction.
 18. The system of claim 12, wherein the prediction engine is configured to receive a third input variable and to generate a second attendance prediction at the predefined event milestone in response to the third input variable.
 19. The system of claim 19, wherein the event milestone prediction system is configured to assign a second confidence level to the second attendance prediction.
 20. A computer program product for predicting the timing of and attendance at a predefined event milestone, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, wherein the computer readable storage medium is not a transitory signal per se, the program instructions readable by a computer to cause the computer to perform a method comprising: receiving, by a prediction engine, a first input variable; generating, by the prediction engine, a first time prediction of the predefined event milestone in response to the received first input variable; receiving, by the prediction engine, a second input variable; generating, by the prediction engine, a first attendance prediction at the predefined event milestone in response to the second input variable; and assigning a first confidence level to one of the first time prediction and the first attendance prediction. 